// module.exports = {
//   preset: '@vue/cli-plugin-unit-jest',
//   testMatch: ["**/_tests_/*.test.js"],
//   collectCoverage: true,
//   coverageReporters: ["html", "text-summary"]

// }
module.exports = {
  preset: "@vue/cli-plugin-unit-jest",
  moduleFileExtensions: [
    "js",
    "json",
    // 告诉 Jest 处理 `*.vue` 文件
    "vue"
  ],
  moduleNameMapper: {
    // 支持源代码中相同的 `@` -> `src` 别名
    "^@/(.*)$": "<rootDir>/src/$1",
    // 支持源代码中相同的 `_c` -> `src/components` 别名
    "^_c/(.*)$": "<rootDir>/src/components/$1",
    "\\.(css|less|scss|sss|styl)$": "jest-css-modules"
  },
  transform: {
    '^.+\\.js$': 'babel-jest',  // 对 .js 文件使用 babel-jest 进行转换
    '^.+\\.vue$': 'vue-jest',   // 如果是 Vue 项目，使用 vue-jest 处理 .vue 文件
  },
  // "modulePaths": [
  //   "<rootDir>/src",
  //   "<rootDir>/node_modules"
  // ],
  transformIgnorePatterns: [
    "/node_modules/(?!(vant|_vant@2.12.13@vant))"
    // "<rootDir>/node_modules/(?!lodash-es)",
    // "/!node_modules\\/lodash-es/"
  ],
  // testMatch: ['**/__tests__/**/*.[jt]s?(x)', '**/tests/unit/**/?(*.)+(spec|test).[jt]s?(x)'],
  // 运行指定的测试文件
  testMatch: ["**/_tests_/*.test.js"],
  setupFilesAfterEnv: ["./jest.setup.js"],
  // snapshotSerializers: [
  //   // 快照的序列化工具
  //   '<rootDir>/node_modules/jest-serializer-vue'
  // ],
  // displayName: 'CLIENT',
  // 成多种格式的测试覆盖率报告  可选
  collectCoverage: true,
  // collectCoverageFrom: ['**/view/**/*.{js,vue}', '**/view-mobile/**/*.{js,vue}', '!**/node_modules/**', '!**/dist/**', '!**/coverage/**', '!**/public/**', '!**/mock/**', '!**/api/**'],
  // collectCoverageFrom: ['**/*.{js,vue}', '!**/node_modules/**', '!**/dist/**', '!**/coverage/**', '!**/public/**', '!**/mock/**', '!**/api/**'],
  coverageReporters: ["html", "text-summary"]
  // report配置
  // reporters: [
  //   'default',
  //   [
  //     './node_modules/jest-html-reporter',
  //     {
  //       pageTitle: 'test report',
  //       outputPath: 'testReport/JesttestReport.html',
  //       includeFailureMsg: true
  //     }
  //   ]
  // ]
};
